The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
Referring now to FIG. 1, a functional block diagram of a wireless communications system is presented. A home network 102 receives packets from and sends packets to a distributed communications system 104, such as the Internet. A wireless terminal 106 wirelessly connects to the home network 102. For example only, the wireless terminal 106 may be a mobile phone, and the home network 102 may be the cellular network of a mobile phone operator.
The wireless terminal 106 is configured to work with the home network 102, and may be unable to connect to the networks of other carriers. In various implementations, the wireless terminal 106 may be able to view content from the distributed communications system 104 via the home network 102. The home network 102 may interconnect with the networks of other service providers and/or core networks.
Referring now to FIG. 2, a functional block diagram of a wireless communications system offering mobility is presented. The home network 102 is connected to one or more visited networks 110. For example only, FIG. 2 depicts three visited networks 110-1, 110-2, and 110-3. In various implementations, the visited networks 110 may be the networks of other service providers, including service providers in other countries.
A mobile wireless terminal 120 includes mobility features that allow the mobile wireless terminal 120 to communicate with the visited networks 110. For example, in FIG. 2, the mobile wireless terminal 120 has established a wireless connection to the visited network 110-1. The mobile wireless terminal 120 includes the code and data used to communicate with the home network 102 via the visited network 110-1. In this way, the mobile wireless terminal 120 can interface with the home network 102 even when connected to one of the visited networks 110. Because the mobile wireless terminal 120 itself includes mobility features, the mobile wireless terminal 120 may be described as supporting client mobile Internet protocol (CMIP).
For example, mobile Internet protocol (IP) for IP version 6 (IPv6) is described in request for comment (RFC) 3775, titled “Mobility Support in IPv6,” the disclosure of which is hereby incorporated by reference in its entirety. Mobile IP for IP version 4 (IPv4) is described in RFC 3344, entitled “IP Mobility Support for IPv4,” the disclosure of which is hereby incorporated by reference in its entirety.
Referring now to FIG. 3, a functional block diagram depicts a wireless communications system that provides proxy mobility to the wireless terminal 106. A home network 150 communicates with visited networks 160-1, 160-2, and 160-3. The visited networks 160 provide transparent mobility to wireless terminals, such as the wireless terminal 106, which do not include mobility functionality. This may be referred to as proxy mobile IP (PMIP) or network mobile IP. Proxy mobility in IPv6 is described in an Internet Engineering Task Force (IETF) draft titled “Proxy Mobile IPv6” (published Jun. 18, 2007 and available as “draft-ieff-netlmm-proxymip6-01.txt”), the disclosure of which is hereby incorporated by reference in its entirety.
When the wireless terminal 106 attempts to establish a link with the visited network 160-1, the visited network 160-1 determines a network (e.g., a home network) to which the wireless terminal 106 belongs. In this case, the visited network 160-1 determines that the home network 150 is the appropriate network. The visited network 160-1 then forwards packets from the wireless terminal 106 to the home network 150 and passes packets from the home network 150 to the wireless terminal 106. The wireless terminal 106 can therefore be oblivious to the fact that the wireless terminal 106 is connected to the visited network 160-1 instead of to the home network 150.
Referring now to FIG. 4, a functional block diagram and timeline of an implementation of client mobility is presented. The home network 102 includes a home agent (HA) 180. The HA 180 establishes a logical location of the mobile wireless terminal 120. Packets ultimately destined for the mobile wireless terminal 120 are sent to the HA 180, while packets from the mobile wireless terminal 120 will appear to originate from the logical location established by the HA 180.
The mobile wireless terminal 120 may establish a connection to an access router (AR) 182 within the visited network 110-1. In various implementations, additional access routers (not shown) may be present. The AR 182 may communicate with other networks, including the home network 102. The mobile wireless terminal 120 establishes layer 1 and layer 2 connectivity with the visited network 110-1.
Once the mobile wireless terminal 120 connects to the visited network 110-1, the mobile wireless terminal 120 may perform authentication and authorization with the AR 182. This may include communicating with an authentication, authorization, and accounting (AAA) server. The AAA server may retrieve information based on an identifier of the mobile wireless terminal 120, such as a network address identifier, that uniquely identifies the mobile wireless terminal 120. The AAA server may indicate to the AR 182 whether the mobile wireless terminal 120 should be allowed access to the home network 102 and what services should be provided to the mobile wireless terminal 120.
The mobile wireless terminal 120 performs address setup to determine a local address from the AR 182. Using this local address, the mobile wireless terminal 120 can communicate with various network elements, including the HA 180. The mobile wireless terminal 120 performs bootstrapping with the HA 180 to determine information such as IP Security Association information. The mobile wireless terminal 120 transmits a binding update message to the HA 180. The HA 180 allocates a global home address HoA to the mobile wireless terminal 120.
The HA 180 may create a binding cache entry that records information about the mobile wireless terminal 120, such as the current address of the mobile wireless terminal 120 and the allocated global home address HoA. In various implementations, the home address may be provided to the mobile wireless terminal 120 during bootstrapping, and the binding update simply registers the assigned home address with the home agent 180.
The HA 180 transmits a binding acknowledgement message to the mobile wireless terminal 120. The binding acknowledgement message includes the HoA so that the mobile wireless terminal 120 is aware of its global home address. Packets sent from other network devices, such as other wireless terminals, are sent to that global home address. The HA 180 receives those packets and forwards them to the mobile wireless terminal 120. Similarly, packets from the mobile wireless terminal 120 are first sent to the HA 180. The HA 180 then forwards the packets with a source address of HoA. To allow for packets to be exchanged between the mobile wireless terminal 120 and the HA 180, a tunnel is established between the mobile wireless terminal 120 and the HA 180.
Referring now to FIG. 5, a functional block diagram and timeline of an implementation of proxy mobility is presented. The wireless terminal 106 may establish a connection to a mobile access gateway (MAG) 190 in the visited network 160-1. In various implementations, additional mobile access gateways (not shown) may be present in the visited network 160-1. The MAG 190 may communicate with other networks, including the home network 150.
Once the wireless terminal 106 connects at layers 1 and 2, the MAG 190 may authenticate the wireless terminal 106 and determine what services the wireless terminal 106 is authorized to access. The wireless terminal 106 then requests an address from the MAG 190. The MAG 190 determines a local mobility anchor (LMA) to which the wireless terminal 106 belongs. For example only, the MAG 190 may consult a home subscriber server (HSS) to determine the appropriate LMA.
The MAG 190 then sends a proxy binding update identifying the wireless terminal 106 to the identified LMA, which in this case is LMA 192, located in the home network 150. The LMA 192 allocates a home address HoA for the wireless terminal 106. The LMA 192 may also create a binding cache entry to record information about the wireless terminal 106. The LMA 192 sends a proxy binding acknowledgement including the HoA to the MAG 190.
The MAG 190 and the LMA 192 establish a tunnel for transfer of packets to and from the wireless terminal 106. The MAG 190 then assigns the HoA to the wireless terminal 106. When the wireless terminal 106 transmits a packet, the MAG 190 sends that packet through the tunnel to the LMA 192. The LMA 192 then forwards the packet with a source address of HoA. When a packet arrives at the LMA 192 with a destination address of HoA, the LMA 192 sends the packet to the MAG 190 through the tunnel. The MAG 190 then forwards the packets to the wireless terminal 106.
Using this architecture, the wireless terminal 106 can be unaware of the mobility services provided by the MAG 190. As expected, the wireless terminal 106 has been assigned a home address in the home network 150. The wireless terminal 106 therefore does not need to be aware that the wireless terminal 106 is actually connected to the visited network 160-1 instead of being directly connected to the home network 150.
Referring now to FIGS. 6-8, exemplary message flow diagrams are presented for various methods of obtaining a layer 3 address (e.g., an IP address). In FIG. 6, an example of dynamic host configuration protocol (DHCP) is shown. DHCP may be used to obtain an IPv4 address or an IPv6 address. DHCP for IPv4 is described in RFC 2131, titled “Dynamic Host Configuration Protocol,” the disclosure of which is hereby incorporated by reference in its entirety. DHCP for IPv6 is described in RFC 3315, titled “Dynamic Host Configuration Protocol for IPv6 (DHCPv6),” the disclosure of which is hereby incorporated by reference in its entirety.
After a wireless terminal establishes layer 2 connectivity with an access router, the wireless terminal may broadcast a DHCP request. The access router can then provide the wireless terminal with an address via a DHCP reply. In various implementations, a two-stage process may be performed, where two requests and two replies are sent. The initial request may be a discovery message and the initial reply may be an offer message. A subsequent request indicates an acceptance of the offer of the address and a subsequent reply indicates that the access router acknowledges the request. This subsequent reply may provide additional configuration information, such as domain name server (DNS) addresses.
Referring now to FIG. 7, a timeline depicts exemplary stateless IP address autoconfiguration. Stateless autoconfiguration for IPv6 is described in RFC 2462, titled “IPv6 Stateless Autoconfiguration,” the disclosure of which is hereby incorporated by reference in its entirety. After the wireless terminal establishes layer 2 connectivity with an access router, the wireless terminal broadcasts a router solicitation message. The access router can then respond with a router advertisement, which includes an address prefix. The address prefix may be local to the access router's network or may be globally routable.
The wireless terminal configures a full IPv6 address based on the address prefix provided by the access router. For example only, the address prefix may be a 64-bit value, and the wireless terminal creates a 128-bit IPv6 address using the address prefix and a 64-bit value based on an interface identifier of the wireless terminal. For example only, the interface identifier may include a media access control (MAC) address.
The wireless terminal may then verify that the created address is unique, at least within the access router's network. The wireless terminal may determine uniqueness of the created address by broadcasting a neighbor discovery message that includes the created address. If no neighbors respond, the wireless terminal assumes that no other network node is using the created address. Neighbor discovery is described in RFC 2461, titled “Neighbor Discovery for IP version 6 (IPv6),” the disclosure of which is hereby incorporated by reference in its entirety.
Referring now to FIG. 8, an exemplary message diagram depicts a scenario where the wireless terminal attempts to use stateless address autoconfiguration but the access router requires the use of DHCP. After layer 2 connectivity is established, the wireless terminal broadcasts a router solicitation message. The access router responds with a router advertisement message indicating that DHCP is required. For example only, this may be indicated by setting an ‘M’ flag or an ‘O’ flag in the router advertisement message. In order to obtain a layer 3 address, the wireless terminal responds by broadcasting a DHCP request. The access router can then assign an address to the wireless terminal and provide that address to the wireless terminal in a DHCP reply.